package com.sc.nft.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.sc.nft.enums.MarketTypeEnum;
import com.sc.nft.enums.OrderStatusEnum;
import com.sc.nft.enums.PayMethodEnum;
import com.sc.nft.sup.AnemiaModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 二级订单表(sc_second_order)实体类
 *
 * @author kancy
 * @description 由 Mybatisplus Code Generator 创建
 * @since 2022-10-05 12:53:07
 */
@Data
@NoArgsConstructor
@Accessors(chain = true)
@TableName("sc_second_order")
@EqualsAndHashCode(callSuper = true)
public class SecondOrder extends AnemiaModel implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 寄售Id
     */
    private Long secondCollectionId;

    /**
     * 藏品Id
     */
    private Long collectionId;

    /**
     * 用户藏品Id
     */
    private Long userCollectionId;

    /**
     * 寄售用户Id
     */
    private Long salesUserId;

    /**
     * 购买用户Id
     */
    private Long buyUserId;

    /**
     * 购买价格
     */
    private BigDecimal buyPrice;

    /**
     * 购买价格(红包支付)
     */
    private BigDecimal buyPayBalancePrice;

    /**
     * 手续费
     */
    private BigDecimal charge;

    /**
     * 状态
     */
    private OrderStatusEnum status;

    /**
     * 订单号
     */
    private String orderNo;

    /**
     * 交易时间
     */
    private Date dealTime;

    /**
     * 支付时间
     */
    private Date payTime;

    /**
     * 关闭时间
     */
    private Date closeTime;
    /**
     * 实际关闭时间
     */
    private Date realCloseTime;

    /**
     * 实际到账金额
     */
    private BigDecimal realAmount;

    /**
     * 防囤罚没金额
     */
    private BigDecimal preventHoard;

    /**
     * 结算标记
     */
    private Boolean settleFlag;

    /**
     * 市场分类 :1:品牌孵化 2:自由市场
     */
    private MarketTypeEnum marketType;

    /**
     * 商品名称
     */
    private String firstTitle;
    /**
     * 藏品总数
     */
    private Integer collectionSumCount;
    /**
     * 藏品序号
     */
    private Integer numbering;
    /**
     * 业绩计算标记
     */
    private Boolean performanceSettleFlag;
    /**
     * 分润模板Id
     */
    private Long shareProfitPanelId;

    @ApiModelProperty(value = "gas上链手续费")
    private BigDecimal gas;

    @ApiModelProperty(value = "是否是共识区")
    private Boolean isConsensus;

    /**
     * @see PayMethodEnum
     */
    @ApiModelProperty("收款方式")
    private PayMethodEnum receiveType;

    @ApiModelProperty("二级求购单id")
    private Long secondWantBuyOrderId;

    @ApiModelProperty("是否求购单")
    private Boolean isSecondWantBuyOrder;

}